#!/bin/bash
# -*- coding: utf-8 -*-
# A股股票全量同步脚本
# 1. 同步股票基本信息（股票列表）
# 2. 同步日线数据（默认最近5天）

# 脚本目录
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
cd "$SCRIPT_DIR"

# 颜色输出
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m' # No Color

# 打印带颜色的信息
print_info() {
    echo -e "${GREEN}[INFO]${NC} $1"
}

print_error() {
    echo -e "${RED}[ERROR]${NC} $1"
}

print_warning() {
    echo -e "${YELLOW}[WARNING]${NC} $1"
}

print_step() {
    echo -e "${BLUE}[STEP]${NC} $1"
}

# 检查虚拟环境
if [ ! -d "venv" ]; then
    print_error "虚拟环境不存在，请先创建虚拟环境"
    exit 1
fi

# 激活虚拟环境
print_info "激活虚拟环境..."
source venv/bin/activate

# 检查时间（建议15:00之后运行）
HOUR=$(date +%H)
if [ $HOUR -lt 15 ]; then
    print_warning "当前时间早于15点，今日数据可能尚未生成"
fi

# 解析参数（默认同步5天）
DAYS=${1:-5}

echo ""
echo "=========================================="
echo "       A股股票全量同步脚本"
echo "=========================================="
echo "开始时间: $(date '+%Y-%m-%d %H:%M:%S')"
echo "同步天数: $DAYS 天"
echo "=========================================="
echo ""

# ==========================================
# 第一步：同步股票基本信息
# ==========================================
print_step "步骤 1/2: 同步股票基本信息"
echo ""

python sync_stock_info.py

# 检查执行结果
if [ $? -eq 0 ]; then
    echo ""
    print_info "✓ 股票信息同步完成！"
    echo ""
else
    echo ""
    print_error "✗ 股票信息同步失败，终止执行"
    exit 1
fi

# 等待一下，避免API请求过快
sleep 2

# ==========================================
# 第二步：同步日线数据
# ==========================================
print_step "步骤 2/2: 同步最近 $DAYS 天的日线数据"
echo ""

python sync_stock_daily_batch.py --days $DAYS

# 检查执行结果
if [ $? -eq 0 ]; then
    echo ""
    print_info "✓ 日线数据同步完成！"
else
    echo ""
    print_error "✗ 日线数据同步失败"
    exit 1
fi

# ==========================================
# 完成
# ==========================================
echo ""
echo "=========================================="
print_info "✓ 全量同步完成！"
echo "=========================================="
echo "结束时间: $(date '+%Y-%m-%d %H:%M:%S')"
echo "=========================================="
echo ""
print_info "同步完成的内容："
echo "  1. 股票基本信息（股票列表、交易所、行业等）"
echo "  2. 最近 $DAYS 天的日线数据（开高低收、成交量等）"
echo ""
print_info "下一步可以："
echo "  - 运行股票筛选器查找符合条件的股票"
echo "  - 查看 logs/ 目录下的日志文件了解详细执行情况"
echo ""

